#include "../resources/Sales_data.h"
#include <cstdlib>

// 我们必须将模板特例化声明成 std 的成员
namespace std {
    template <> struct hash<Sales_data>;
}

// 这样就可以在命名空间 std 的外部定义它了
template <> struct std::hash<Sales_data>
{
    std::size_t operator()(const Sales_data& s) const
    {
        return hash<string>()(s.bookNo) ^
                hash<unsigned>()(s.units_sold) ^
                hash<double>()(s.revenue);
    }
};
